In programmable non-volatile memories which have a floating gate, and particularly which have electrical erase capability, there is a limit to the number of program and erase cycles that can be run. Electrically erasable non-volatile memories are generally known as electrically erasable programmable read only memories (EEPROMs). With each program or erase cycle, electrons are passed through the dielectric which insulates the floating gate and thus makes it "floating" in the electrical sense. Each program cycle as well as each erase cycle puts a stress on the dielectric which is used to insulate the floating gate. Each time a byte in the memory is to be programmed it must first be in the erased state. Consequently, for each time a byte is programmed, at least some of the bits will be both erased and programmed. This number of cycles is the endurance of the device. After some number of cycles the dielectric around the floating gate becomes leaky. After that the floating gate is not effective in retaining charge so that the memory cell so effected cannot effectively be programmed. This characteristic is known as the endurance of the memory. It is obviously desirable to have high endurance.
Another aspect of programming of EEPROMs is that it is quite time consuming in comparison to other memory types. In random access memories for example the time to perform a write is about the same as the time required to perform a read. In the case of EEPROMs, a typical read time might be 100 nanoseconds (ns), whereas a typical write time (erase time plus program time) might be 3 milliseconds (ms). This is over four orders of magnitude longer to write than to read. The 3 ms write time is required for each byte that is to be programmed. Consequently, the write time becomes even greater if a large number of bytes are to be programmed. Included in the time to write is the time to erase and to program. The rate of programming or erasure is determined by the rate at which electrons can either charge or discharge the floating gate by tunneling through the dielectric around the floating gate. This rate is limited by the device characteristics. Consequently, improvement in the device characteristics appears to be the source for improving program time. A circuit improvement, however, can be implemented without requiring an improvement in the process or device technology.